package com.clkj.xiuzheng.pojo.shangcheng;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;

/**
 * @author yawang
 * @date Mon Jun 24 11:23:15 CST 2024
 * 退货表
 */
@ApiModel( value ="t_xz_orderReturn" )
@Table( name ="t_xz_orderReturn" )
public class OrderReturn  implements Serializable {

    @Id
   	@Column(name = "return_id",updatable = false )
	@ApiModelProperty( value="null")
	private Integer returnId;

	/**
	 * 订单详情中的商品信息
	 */
   	@Column(name = "info_id" )
	@ApiModelProperty( value="订单详情中的商品信息")
	private Integer infoId;

	/**
	 * 主订单编号
	 */
   	@Column(name = "order_number" )
	@ApiModelProperty( value="主订单编号")
	private String orderNumber;

	/**
	 * 退货数量
	 */
   	@Column(name = "return_num" )
	@ApiModelProperty( value="退货数量")
	private Integer returnNum;

	/**
	 * 退货完成状态
	 */
   	@Column(name = "return_status" )
	@ApiModelProperty( value="退货完成状态 0为待审核 1为可退货 2为已完成 3为审核被驳回 4余额不足，不可退货")
	private Integer returnStatus;

	/**
	 * 退货的快递单号
	 */
   	@Column(name = "return_kd_code" )
	@ApiModelProperty( value="退货的快递单号")
	private String returnKdCode;

	/**
	 * 退货的快递公司
	 */
   	@Column(name = "return_kd" )
	@ApiModelProperty( value="退货的快递公司")
	private String returnKd;

	/**
	 * 退货申请时间
	 */
   	@Column(name = "return_date" )
	@ApiModelProperty( value="退货申请时间")
	private String returnDate;

	/**
	 * 需要返回的余额
	 */
   	@Column(name = "return_balance" )
	@ApiModelProperty( value="需要返回的余额")
	private Integer returnBalance;

	/**
	 * 需要返的积分
	 */
   	@Column(name = "return_score" )
	@ApiModelProperty( value="需要返的积分")
	private Integer returnScore;

	/**
	 * 退款金额
	 */
   	@Column(name = "return_money" )
	@ApiModelProperty( value="退款金额")
	private Double returnMoney;

	/**
	 * 退货服务单号
	 */
   	@Column(name = "return_number" )
	@ApiModelProperty( value="退货服务单号")
	private String returnNumber;

    /**
     * 如果退货完成时，余额或积分不足，提示的内容
     */
    @Column(name = "return_note" )
    @ApiModelProperty( value="如果退货完成时，余额或积分不足，提示的内容，审核不通过时的备注")
    private String returnNote;

    /**
     * 用户id
     */
    @Column(name = "user_id" )
    @ApiModelProperty( value="用户id")
    private Integer userId;

    /**
     * 申请原因
     */
    @Column(name = "return_reason" )
    @ApiModelProperty( value="申请原因")
    private String returnReason;


    /**
     * 详情描述
     */
    @Column(name = "return_detail" )
    @ApiModelProperty( value="详情描述")
    private String returnDetail;

    /**
     * 原订单总金额
     */
    @Column(name = "total_money" )
    @ApiModelProperty( value="原订单总金额")
    private Double totalMoney;

    @Transient
    @ApiModelProperty( value="用于查询接收字段")
    private String productName;
    @Transient
    @ApiModelProperty( value="用于查询接收字段")
    private String productImage;
    @Transient
    @ApiModelProperty( value="用于查询接收字段")
    private Double productPrice;
    @Transient
    @ApiModelProperty( value="用于查询接收字段")
    private String formatName;

  public Integer getReturnId() {
    return returnId;
  }

  public void setReturnId(Integer returnId) {
    this.returnId = returnId;
  }


  public Integer getInfoId() {
    return infoId;
  }

  public void setInfoId(Integer infoId) {
    this.infoId = infoId;
  }


  public String getOrderNumber() {
    return orderNumber;
  }

  public void setOrderNumber(String orderNumber) {
    this.orderNumber = orderNumber;
  }


  public Integer getReturnNum() {
    return returnNum;
  }

  public void setReturnNum(Integer returnNum) {
    this.returnNum = returnNum;
  }


  public Integer getReturnStatus() {
    return returnStatus;
  }

  public void setReturnStatus(Integer returnStatus) {
    this.returnStatus = returnStatus;
  }


  public String getReturnKdCode() {
    return returnKdCode;
  }

  public void setReturnKdCode(String returnKdCode) {
    this.returnKdCode = returnKdCode;
  }


  public String getReturnKd() {
    return returnKd;
  }

  public void setReturnKd(String returnKd) {
    this.returnKd = returnKd;
  }


  public String getReturnDate() {
    return returnDate;
  }

  public void setReturnDate(String returnDate) {
    this.returnDate = returnDate;
  }


  public Integer getReturnBalance() {
    return returnBalance;
  }

  public void setReturnBalance(Integer returnBalance) {
    this.returnBalance = returnBalance;
  }


  public Integer getReturnScore() {
    return returnScore;
  }

  public void setReturnScore(Integer returnScore) {
    this.returnScore = returnScore;
  }


  public Double getReturnMoney() {
    return returnMoney;
  }

  public void setReturnMoney(Double returnMoney) {
    this.returnMoney = returnMoney;
  }


  public String getReturnNumber() {
    return returnNumber;
  }

  public void setReturnNumber(String returnNumber) {
    this.returnNumber = returnNumber;
  }

    public String getReturnNote() {
        return returnNote;
    }

    public void setReturnNote(String returnNote) {
        this.returnNote = returnNote;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public String getReturnReason() {
        return returnReason;
    }

    public void setReturnReason(String returnReason) {
        this.returnReason = returnReason;
    }

    public String getReturnDetail() {
        return returnDetail;
    }

    public void setReturnDetail(String returnDetail) {
        this.returnDetail = returnDetail;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getProductImage() {
        return productImage;
    }

    public void setProductImage(String productImage) {
        this.productImage = productImage;
    }

    public Double getProductPrice() {
        return productPrice;
    }

    public void setProductPrice(Double productPrice) {
        this.productPrice = productPrice;
    }

    public String getFormatName() {
        return formatName;
    }

    public void setFormatName(String formatName) {
        this.formatName = formatName;
    }

    public Double getTotalMoney() {
        return totalMoney;
    }

    public void setTotalMoney(Double totalMoney) {
        this.totalMoney = totalMoney;
    }
}
